High performance SoCs are subject to a series of power delivery network (PDN) limitations. One such limitation involves small batteries and their potential for becoming stressed into failure by short bursts of high power consumption from a process running on an SoC. If the instantaneous power being consumed by the SoC is able to exceed a set limit, the instantaneous power may significantly impact the power supply and battery. Also, exceeding this limit can result in an I*R voltage drop that can result with “bluescreen” or trigger overcurrent protection and shut down the system. Thus, the instantaneous current can pose a significant limitation on the system.
To compensate for these PDN limitations, a number of power management techniques have been used or have been developed. There are reactive techniques that can be used after a power limit has been exceeded. These include power limit 1 (PL1), power limit 2 (PL2) and power limit 3 (PL3). PL1 is the long-term CPU power limit that the system can withstand without overheating. PL2 is the short-term burst limit used for temporary excursions to higher clocks (e.g., a quick trip to a faster clock frequency to improve responsiveness while loading a program). PL3 is dynamic voltage and frequency scaling technique used on a chip. PL2 is measured in seconds, while the PL3 limit is monitored in milliseconds to prevent instantaneous power use from damaging a device's battery. These techniques both require power measurements to be made, and in response to those power measurement, both PL2 and PL3 lower a SoC's frequency. However, because these techniques require power measurements, they are too slow to respond and reduce the SoC's instantaneous power when it rises to high.
In another reactive approach, an interface on the platform level monitors when the instantaneous power limit is surpassed and sends a signal, from the platform, to the central processing unit (CPU) to throttle its operation and bring the current down below the instantaneous limit.
In yet another reactive approach, a calculation of the current per voltage regulator domain is made to see if the current is above a maximum value (limit). However, this approach is not used for multiple voltage regulator (VR) domains and, thus, is not appropriate for package level power delivery problems, because limiting power in each VR domain can cause an undesirable reduction in performance of domains and increased cost for higher limits. However, because these techniques are reactive in nature, they cannot prevent the instantaneous current from becoming too high and causing damage before they are returned to a safer level.